package com.hsmw.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.hsmw.common.base.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 * 用户邀请记录表
 * </p>
 *
 * @author wd
 * @since 2021-11-10
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="HsmwInviteRecord对象", description="用户邀请记录表")
public class HsmwInviteRecord extends BaseModel {

    private static final long serialVersionUID = 1L;

    private Boolean flag;

    @ApiModelProperty(value = "1. 公司邀请调度 2. 公司邀请合作公司 3. 搅拌站邀请自营 4.  搅拌站邀请合作 5. 公司公司邀请工长6. 公司邀请负责人 7. 搅拌站邀请工长 8. 搅拌站请负责人9. 搅拌站邀请调度10. 搅拌站邀请调度")
    private String inviteType;

    @ApiModelProperty(value = "邀请人 ID")
    private String inviteUserId;

    @ApiModelProperty(value = "邀请姓名")
    private String inviteUserName;

    @ApiModelProperty(value = "邀请电话")
    @TableField("Invite_user_tel")
    private String inviteUserTel;

    @ApiModelProperty(value = "被邀请人ID")
    private String inviteeUserId;

    @ApiModelProperty(value = "被邀请人姓名")
    private String inviteeUserName;

    @ApiModelProperty(value = "被邀请人电话")
    private String inviteeUserTel;

    @ApiModelProperty(value = "1. 邀请中 2. 成功  3. 失败")
    private String inviteStatus;

    @ApiModelProperty(value = "通过或者拒绝时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    private LocalDateTime rejectOrReceivedTime;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "项目ID")
    private String itemId;

    @ApiModelProperty(value = "项目名称")
    private String itemName;

    @ApiModelProperty(value = "邀请公司名称")
    private String inviteCompanyName;

    @ApiModelProperty(value = "邀请公司ID")
    private String inviteCompanyId;

    @ApiModelProperty(value = "被邀请公司名称")
    private String companyName;

    @ApiModelProperty(value = "被邀请公司ID")
    private String companyId;


    @ApiModelProperty(value = "搅拌站ID")
    private String plantId;

    @ApiModelProperty(value = "搅拌站名称")
    private String plantName;

    @ApiModelProperty(value = "搅拌站ID 多选 传参使用")
    @TableField(exist = false)
    private List<String> plantIds;

    @ApiModelProperty(value = "车辆数量")
    @TableField(exist = false)
    private Integer vehicleCount;


    @ApiModelProperty(value = "选中的公司负责人ID集合")
    @TableField(exist = false)
    private List<String> userIds;

    @TableField(exist = false)
    private String lng;

    @TableField(exist = false)
    private String lat;


    @ApiModelProperty(value = "距离")
    @TableField(exist = false)
    private Long concretePlantDistance;

    @ApiModelProperty(value = "累积方量")
    @TableField(exist = false)
    private Double sumVolume;


    @ApiModelProperty(value = "搅拌站平面图")
    @TableField(exist = false)
    private String plantGraph;

    @ApiModelProperty(value = "项目位置名称")
    @TableField(exist = false)
    private String position;




}
